home *** CD-ROM | disk | FTP | other *** search
/ Experimental BBS Explossion 3 / Experimental BBS Explossion III.iso / gus / sdkdigv4.zip / SDKV4N8.TXT < prev    next >
Text File  |  1993-09-10  |  3KB  |  63 lines

  1.  
  2.  
  3. GUS Programmer's Digest     Fri, 10 Sep 93   :07 MDT     Volume 4: Issue   8  
  4.  
  5. Today's Topics:
  6.                            DMA rate divisor
  7.  
  8. Standard Info:
  9.     - Meta-info about the GUS can be found at the end of the Digest.
  10.     - Before you ask a question, please READ THE FAQ.
  11.  
  12. ----------------------------------------------------------------------
  13.  
  14. Date: Thu, 9 Sep 93 2:45:22 CDT
  15. From: chuth@lonestar.utsa.edu (Cornel H. Huth)
  16. Subject: DMA rate divisor
  17. Message-ID: <9309090745.AA07490@lonestar.utsa.edu>
  18.  
  19. I see why the GUS has a DMA rate divisor (bits 3&4 of register 41). I
  20. was having some problems with 16-bit DMA'ing, especially related to page
  21. breaks and odd pages. Solved that problem but then had another.
  22.  
  23. Seems that when doing multiple transfers (as in patch cache to GRAM) and
  24. a small sample is transfered, the result can be...crap (noise). Bumping
  25. the DMA rate divisor from 0 to 1 fixed the problem. The sample xfer was
  26. the short little thing of acpiano, wave#2 (262Hz root). It crapped out
  27. on that and sometimes the last sample, wave#7 (1760Hz root).
  28.  
  29. What led me to try the rate divisor was that, after I fixed the 16-bit DMA
  30. problems, I was having problems when running without a debugger, but fine
  31. with. Since I was breaking after each DMA xfer (or page break -- must have
  32. had 10 BPs active) there was no problem of the DMA overrunning (whatever the
  33. symptom) from CV. From the CL the thing crapped out on those short samples.
  34.  
  35. Since I'd been through the code and felt all was bug-free, I had to look
  36. elsewhere. Not long after (compared to the 15 hours with the 16-bit DMA),
  37. I thought about adding code to slow down the DMA. Sure enough, setting the
  38. divisor bits=1 has it working noise-free. I do have a fast DMA clock on
  39. the machine (AMISETUP 2.1 says 8.25MHz, twice standard speed), so this
  40. problem may not affect everyone, and then you'd probably need to have some
  41. real fast patch caching going on, too.
  42. BTW, I hadn't any problems running the GUS in 8-bit DMA mode. After trying
  43. DMAs 5,6 (for experimenting with GUSDELAY), then I found the problems mentioned
  44. above.
  45.  
  46. ------------------------------
  47.  
  48. End of GUS Programmer's Digest V4 #8
  49. ************************************
  50.  
  51. To post to tomorrow's digest:               <gus-sdk%itchy@dsd.es.com>
  52. To (un)subscribe or get help:       <gus-sdk-request%itchy@dsd.es.com>
  53. To contact a human (last resort):     <gus-sdk-owner%itchy@dsd.es.com>
  54.  
  55. FTP sites:         archive.epas.utoronto.ca         pub/pc/ultrasound
  56.                    wuarchive.wustl.edu       systems/msdos/ultrasound
  57. Hints:
  58.       - Get the FAQ from the FTP sites or the request server.
  59.       - Mail to <gus-sdk-request%itchy@dsd.es.com> for info about
  60.     other GUS related mailing lists (UNIX, OS/2, GUS-MIDI, etc.)
  61.  
  62.  
  63.